This invention relates to the interface and control of electric motors.
DC motors are small, low cost and efficient, and are popular for use in open loop control environments. On the other hand, stepper motors are simpler to control, but at much higher cost. If precision control of speed and/or position is desired, more expensive closed-loop servo control systems are used, and typically require position sensor and control electronics. Optical or magnetic encoders are commonly used to provide motion and speed information to the motor control circuitry.
In order to reduce cost, U.S. Pat. No. 5,869,939 describes a DC motor with an unbalanced winding and the control system to detect the difference in current through each winding to detect rotation. This detected signal is used to control the motion and position of the motor. U.S. Pat. No. 6,054,787 also describes an electric motor with a reduced number of windings on one of the coil windings.
Each of these servo control systems interfaces separately to the host controller, and requires a share of system overhead. If one servo control takes up X inputs to the host controller, typically an ASIC, adding a second servo will usually require X additional inputs to the ASIC.
An unbalanced winding motor and control system offers the opportunity for lower cost motion control design, however it did not resolve the design challenge and cost of interfacing and controlling multiple motors in a given application.
This invention relates to the interface and control of motors. It allows system designers to add motion or position control in a low cost and logical manner without proportionally adding system overhead. This interface approach will benefit any motor control system, such as DC or stepper motors; however its advantages may be more significant with the unbalanced winding DC motor due to its low cost.
Traditional designs require a unique interface (dedicated interface port) for each servo channel, as well as system bandwidth to monitor the progress of the motor in motion. This invention enables multiple motors to interface to the host, either in parallel or in a cascaded manner. Each motor has an unique identification (ID) or address, and can interpret and execute a command word addressed to the motor. Each motor can also report its status and completion of a command. This greatly simplifies system overhead.